package collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Objects;

/**
 * Collection常用API
 * 集合受元素equals方法影响的操作
 * @author XingHaiYang
 * @date 2022/9/9 10:13
 */
public class CollecitonDemo2 {
    public static void main(String[] args) {
        Collection c = new ArrayList();
        c.add(new Point(1, 2));
        c.add(new Point(3, 4));
        c.add(new Point(5, 6));
        c.add(new Point(7, 8));
        c.add(new Point(9, 10));
        c.add(new Point(1, 2));
        System.out.println(c);//集合重写了toString方法,所以这里能直接输出集合元素，如果不重写，那只能看到地址值
        /**
         * boolean contains(Object o) 集合是否包含给定元素
         * 判断的依据是：集合中的元素和给定元素通过equals()方法比较，值为true，意为包含
         */
        Point p = new Point(1, 2);
        boolean contains = c.contains(p);
        System.out.println("集合c是否包含元素p："+contains);
        /**
         * boolean remove(Object o) 删除元素
         * 因为List集合是可以存放重复元素，但是remove方法只会删除第一个与给定元素equals比较相等的元素
         */
        c.remove(p);
        System.out.println(c);

    }
}
